Instructions for using the 4 TurboDOS 1.43 disk images for the Z80 Emulator.

NOTE.. an older DISK IMAGE release exists. There are significant changes. This is for the files included in this zip.(still, some stuff does not work right)

TurboDOS 1.43 was created from TurboDOS 1.41 by Per Frejvall for the Z80Altair emulator, upgaded with TurboDOS 1.43 from Maslin's acrhive, by Larry Greene. This was modified by WJM to run on Z80 Emulator.

The Turbodos 1.30 disk images are the original disks for the Z80 Simulator (Udo Monk)

SINGLE.IMG will directly boot to TurboDOS. The Boot loader in sector 6 is modified to, first, move itself to 8100H, zero the command line length, then load LDSINGLE.COM from the system tracks (T0 S9-72 and T1 S1-72 (17k)...however the LDSINGLE.COM is only 12k) at 0100h in bank 0. Once LDSINGLE.COM is in memory, it searches for and loads OSSINGLE.SYS 

The two work disks (one for MASTER/SINGLE and one for SLAVE1 and SLAVE2, first boot CPM 2.2 BIOSdv2.3. To load TurboDOS you simply run the LDSINGLE.COM, LDMASTER.COM, LDSLAVE1.COM, or LDSLAVE2.COM

The Utilities Disk contains the TurboDOS transient commands.

--------

To run TurboDOS...first make two Z80 emulator shortcuts with Qualifiers... one for MASTER and one for SLAVE1 (the MASTER can also be used for SINGLE) (optional, if planning to run Slave1 and slave 2 simultaneously, make a third shortcut for SLAVE2)

C:\PROGRAM FILES\zemu\zemu MASTER
C:\PROGRAM FILES\zemu\zemu SLAVE1
C:\PROGRAM FILES\zemu\zemu SLAVE2

In MASTER instance of z80 emulator, load MASTER work disk in A: 

to use Slave1 you must configure master...
  Assign a NET dev to DEV10..turn off ISSUE, and CRLF=CR
  Start Standalone Server on PORT (default is 30010)

to use Slave2 you must configure master...
  Assign a NET dev to DEV11..turn off ISSUE, and CRLF=CR
  Start Standalone Server on PORT (default is 30011)

...BOOT CPM... then LDMASTER (or LDSINGLE, if not networking)


In SLAVE1 instance of z80 emulator load SLAVE work disk in A: 

  Assign a NET dev to DEV10..turn off ISSUE, and CRLF=CR
  Connect to PORT where Server is waiting (default is 23, so change to 30010)

...BOOT CPM... then LDSLAVE1

In SLAVE2 instance of z80 emulator load SLAVE(copy) work disk in A: 

  Assign a NET dev to DEV10..turn off ISSUE, and CRLF=CR
  Connect to PORT where Server is waiting (default is 23, so change to 30011)

...BOOT CPM... then LDSLAVE2


Slave 1 should use DEV10, and should connect to DEV 10, port 30010, on master (circuit A 0001)
Slave 2 should use DEV10, and should connect to DEV 11, port 30011, on master (circuit B 0101)

NOTE - if you run on separate systems, also specify IP address where Server is running.

SLAVE1 and SLAVE2 run with NO disks.. all disk accesses will be to the MASTER....
(however disk is required to boot..in a real diskless system, the OS would be Loaded over the network) 

NOTE - TDOS Disk driver, for z80 emulator, is designed to use only PCxxxx disks (1.44mb 4mb and 8mb..all marked as removable, and with MAGIC DD's in sector 5)  (they MUST have a DD or IDT)...Any disk without the DD or IDT will be unknown to TDOS... this is due to the fact that TDOS, automatically, will modify a disk for label and allocation vector...If the disk is not correctly LOGGED IN , the disk will be trashed... so i force you to use only disks that will be correctly LOGGED IN...(you may use external DD/IDTs)

NEVER load the same disk image into DIFFERENT instances of z80 emulator while running TDOS...

NEVER load CPM disks into TDOS unless it is OK to modify them.. TDOS always(if no label) modifies a disk upon Disk Login...it moves the first few directory entries to the end of the disk and then addes a spot for disk a label and allocation table in DELETED dir entries... if CPM then, later,  writes to that disk, it trashes the Label, which is lost, and the allocation table, which TDOS fixes the next time the disk is inserted into a TODS system..

NOTE - since you boot CPM first, and then Load the TDOS OS, if you, while CPM is running, write to the disk image, the LABEL will be lost...(since the label is in a deleted dir entry..)

MASTER has two printers A and B (Spools to queue A and queue B on MASTER)... 

SLAVE has four Printers A, B, C and D...
printer A and B are local on SLAVE1
printer C and D are remote, C and D(Spools to queue A on MASTER) 

The Serial Driver supports 16 deneric devices. 

DEV 10-13 are reservred for the network connections, but are still defined as COM10-COM13. You can not change the network devices allocation without re-assembling the circuit drivers.

Other serial COM ports can be selected in the .PAR files, for Console, and Printers.
CONAST=00,CONDRA ; sets console to DEV 00
PRTAST=08,LSTDRA ; sets a printer to DEV 08 

IF TurbosDOS is set up to authenticate LOGONs (AUTUSR=0ff)... ID=ADMIN PW=TDOS143 (ID=USER1 and ID=USER2 PW=TDOS143)..The USERID.SYS file is already present, you may modify the USERID.SYS file to change.

NOTE... usually SLAVE1 and MASTER will connect without incident, however, sometimes they require a couple tries...sometimes REBOOTS are problematic... ??? but overall stable...

Once booted, TDOS is Banked with 63K TPA in bank 1... 

Use BANK command to switch banks.. (some programs require BANK 0)

DRIVER NOTES ---

LST driver supports multiple printers..currently set in PAR file (08,(LSTDRA) uses DEV 08)

CON driver supports only one console...DEV0 (00,(CONDRA) assigns console to COM0, which is DEV0)

HDSK driver supports up to 16 drives...

each master MCx driver supports 1 circuit, there's 4 drivers x=A-D DEV10-13

Slave SCKT driver supports one circuit..DEV10 (the DEV10 is hardcoded)

The SER driver supports sixteen com ports(COM 0 - COM 15), on DEV00 thru DEV15 
(best to use serA COM14 and serB COM 15)

RTC driver generates two interrupts... one for timeslace(delay) and one for RTC second update...

BNK driver sets common memory boudary to FC00 (so does Loader initialization)...

The DEV driver is used by any other driver that requires access to a DEV...

(NOTE)
SINGLE.IMG system tracks were made with DISK IMAGE BUILDER and PUTSYS.COM
Image Builder was used to add the BOOT.BIN to 0x280/sector 6, 1 sector in length.
Image Builder was used to add the LDSINGLE.COM to 0x400/sector 9, 96 sectors in length.
PUTSYS.COM was used to extract a PC1440 DD from an existing PC1440 disk, and add as TYPE=MAGIC.

Sector 5 contains the DD (Disk Definition)
Sector 6 contains the BOOT sector
Sectors 9-72 on Track 0 and Sectors 1-72 on Track 1 contain the LDSINGLE.COM(12K in 17K space)
(the LDSINGLE.COM may be as big as 17K)

The TDOS transient, BOOT.bin will transfer both T0 and T1 , but keep in mind that the MAGIC must match the disk...moving system tracks from a PC1440 to a PC8190 will cause the 8190 to look like a 1440... use PUTSYS.COM (running in CPM ) to tranfer magic from an appropriate disk image... 

the program TERMINAL.COM is simular to the CPM terminal program , but supports a input QUEUE so that TILDE can be typed anytime and still get seen. Terminal is changed to user COM14 instead of COM 0, since the new serial driver support all 16 DEVs.

WARNING- you must NOT use DEV10-13 (COM10-13) for anything else if the circuit drivers are included... else deadlocks can occur...


